دستور Unoin :
از دستور Union برای ترکيب و ادغام دو يا چند ستون مختلف از 2 يا چند جدول و نشان دادن آنها در يک ستون مشترک استفاده می شود .
در اين دستور ، نوع داده ای ستون های انتخاب شده برای ترکيب بايد يکسان باشند . دستور Union در هنگام ترکيب فيلد ها ، در صورت برخورد با مقادير تکراری آنها را حذف کرده و از هر مقدار يک نمونه را نمايش می دهد . برای مشاهده تمام مقادير ، حتی مقادير تکراری بايد از دستور Union ALL استفاده کرد .
شکل کلی استفاده از اين دستور به صورت زير است :
SQL Statment 1 ( نام فيلد 1 اتخابی )
Union
SQL Statment 1 ( نام فيلد 2 اتخابی )
مثال : شماره دانشجويی ، دانشجويانی را بدهيد که يا دانشجوی رشته نرم افزار بوده يا در درس زبان تخصصی با کد 1013 ثبت نام کرده اند :
41252214 |
Ahmad |
Rezaee |
Hard Ware |
Tehran |
18 |
10724113 |
Ehsan |
Amiri |
Soft Ware |
Karaj |
14 |
10254861 |
Zahra |
Hosini |
Hard Ware |
Tehran |
17 |
27365187 |
Sahar |
Ahmadi |
Soft Ware |
Bam |
16 |
35654415 |
Hesam |
Razavi |
Soft Ware |
Tehran |
19 |
1011 |
پايگاه داده |
3 |
عملی |
1012 |
مباحث ويژه |
3 |
عملی |
1013 |
زبان تخصصی |
2 |
نطری |
41252214 |
1011 |
2 |
85 - 86 |
16 |
10724113 |
1011 |
2 |
85 - 86 |
14 |
41252214 |
1012 |
1 |
85 - 86 |
17 |
10724113 |
1012 |
1 |
85 - 86 |
11 |
10254861 |
1013 |
2 |
85 - 86 |
13 |
10254861 |
1011 |
2 |
84 - 85 |
8 |
27365187 |
1012 |
1 |
84 - 85 |
19 |
27365187 |
1013 |
1 |
84 - 85 |
16 |
35654415 |
1011 |
2 |
84 - 85 |
9 |
35654415 |
1013 |
2 |
84 - 85 |
17 |
Select Stuedent ID From Students
Where Major = ' Soft '
Union
Select Student ID From Selection
Where Course ID = 1013 ; |
10254861 |
10724113 |
27365187 |
35654415 |
|
توجه : می توان دستورات Select تعريف شده در دستور Union را تا حد نياز گسترش د اد . به عبارت ديگر هر دستور مجاز Select در اين قسمت قابل تعريف است . برای مثال می توان در دستورات Select تعريف شده ، جدول ها را به هم پيوند داد و فقط يک ستون خروجی توليد کرد و سپس آن را با ستون طرف ديگر پيوند زد .
نکته : می توان در دستور Union بيش از يک ستون مجزا را تعريف کرد . فقط بايد تعداد ستون های و ترتيب نوع داده ای ستون های تعريف شده يکسان باشند . برنامه مقادير ستون ها را به ترتيب با هم پيوند می دهد .
مثال : شماره دانشجويي ، نام و نام خانوادگی دانشجويانی را بدهيد که در رشته سخت افزار تحصيل کرده يا حداقل يک درس از نوع نظری را انتخاب کرده باشند :
Select Student ID , Name , Family
From Students
Where Major = ' Hard '
Union
Select Student ID , Name , Family
From Students , Seleciton , Courses
where Students.Student ID = Selection.Student ID
AND Selection.Course ID = Courses.Course ID
AND CoType = ' نظری ' ; |
10254861 |
Zahra |
Hosini |
107241113 |
Ehsan |
Amiri |
27365187 |
Sahar |
Ahmadi |
35654415 |
Hesam |
Razavi |
|
|
امتیاز مطلب : 8
|
تعداد امتیازدهندگان : 2
|
مجموع امتیاز : 2